package com.ly.heart.domain;

import java.util.Date;

import com.baomidou.mybatisplus.annotation.IdType;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import com.ly.common.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * 车辆费用单对象 erp_car_cost_info
 *
 * @author cxl
 * @date 2024-09-08
 */
@TableName ("erp_car_cost_info")
@ApiModel (value = "车辆费用单", description = "车辆费用单")
@Data
public class CarCostEntity{

    /** 主键id */
    @TableId (type = IdType.INPUT)
    private String id;

    /** 单据编号 */
    @ApiModelProperty ("单据编号")
    @TableField ("doc_code")
    @Excel (name = "单据编号")
    private String docCode;

    /** 申请日期 */
    @ApiModelProperty ("申请日期")
    @TableField ("apply_time")
    @JsonFormat (pattern = "yyyy-MM-dd")
    @Excel (name = "申请日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date applyTime;

    /** 申请组织 */
    @ApiModelProperty ("申请组织")
    @TableField ("apply_org")
    @Excel (name = "申请组织")
    private String applyOrg;

    /** 申请人 */
    @ApiModelProperty ("申请人")
    @TableField ("apply_by")
    @Excel (name = "申请人")
    private String applyBy;

    /** 申请部门 */
    @ApiModelProperty ("申请部门")
    @TableField ("apply_dept")
    @Excel (name = "申请部门")
    private String applyDept;

    /** 费用承担组织 */
    @ApiModelProperty ("费用承担组织")
    @TableField ("cost_bearing_org")
    @Excel (name = "费用承担组织")
    private String costBearingOrg;

    /** 费用承担部门 */
    @ApiModelProperty ("费用承担部门")
    @TableField ("cost_bearing_dept")
    @Excel (name = "费用承担部门")
    private String costBearingDept;

    /** 往来单位类型 */
    @ApiModelProperty ("往来单位类型")
    @TableField ("contact_units_type")
    @Excel (name = "往来单位类型")
    private String contactUnitsType;

    /** 往来单位 */
    @ApiModelProperty ("往来单位")
    @TableField ("contact_units")
    @Excel (name = "往来单位")
    private String contactUnits;

    /** 联系电话 */
    @ApiModelProperty ("联系电话")
    @TableField ("telephone")
    @Excel (name = "联系电话")
    private String telephone;

    /** 事由 */
    @ApiModelProperty ("事由")
    @TableField ("apply_reason")
    @Excel (name = "事由")
    private String applyReason;

    /** 可用借款余额 */
    @ApiModelProperty ("可用借款余额")
    @TableField ("available_loan_balance")
    @Excel (name = "可用借款余额")
    private String availableLoanBalance;

    /** 币别 */
    @ApiModelProperty ("币别")
    @TableField ("currency")
    @Excel (name = "币别")
    private String currency;

    /** 费用外部承担 */
    @ApiModelProperty ("费用外部承担")
    @TableField ("is_external_cost")
    @Excel (name = "费用外部承担")
    private String isExternalCost;

    /** 外部往来单位类型 */
    @ApiModelProperty ("外部往来单位类型")
    @TableField ("external_contact_units_type")
    @Excel (name = "外部往来单位类型")
    private String externalContactUnitsType;

    /** 外部往来单位 */
    @ApiModelProperty ("外部往来单位")
    @TableField ("external_contact_units")
    @Excel (name = "外部往来单位")
    private String externalContactUnits;

    /** 核定报销金额汇总 */
    @ApiModelProperty ("核定报销金额汇总")
    @TableField ("approve_total_reimbursement_amount")
    @Excel (name = "核定报销金额汇总")
    private String approveTotalReimbursementAmount;

    /** 核定付款金额汇总 */
    @ApiModelProperty ("核定付款金额汇总")
    @TableField ("approve_total_payment_amount")
    @Excel (name = "核定付款金额汇总")
    private String approveTotalPaymentAmount;

    /** 类型(申请付款0；申请退款1；实报实付2；多收款人3) */
    @ApiModelProperty ("类型(申请付款0；申请退款1；实报实付2；多收款人3)")
    @TableField ("type")
    @Excel (name = "类型(申请付款0；申请退款1；实报实付2；多收款人3)")
    private String type;

    /** 业务类型（付款0；冲抵1） */
    @TableField ("doc_type")
    @ApiModelProperty ("${field.name}")
    @Excel (name = "业务类型", readConverterExp = "付=款0；冲抵1")
    private String docType;

    /** 付款组织 */
    @ApiModelProperty ("付款组织")
    @TableField ("payment_org")
    @Excel (name = "付款组织")
    private String paymentOrg;

    /** 结算方式 */
    @ApiModelProperty ("结算方式")
    @TableField ("payment_method")
    @Excel (name = "结算方式")
    private String paymentMethod;

    /** 银行账号携带 */
    @ApiModelProperty ("银行账号携带")
    @TableField ("carrying_bank_info")
    @Excel (name = "银行账号携带")
    private String carryingBankInfo;

    /** 通过网上银行支付 */
    @ApiModelProperty ("通过网上银行支付")
    @TableField ("is_online_pay")
    @Excel (name = "通过网上银行支付")
    private String isOnlinePay;

    /** 银行网点 */
    @ApiModelProperty ("银行网点")
    @TableField ("bank_branches")
    @Excel (name = "银行网点")
    private String bankBranches;

    /** 开户银行 */
    @ApiModelProperty ("开户银行")
    @TableField ("opening_bank")
    @Excel (name = "开户银行")
    private String openingBank;

    /** 账户名称 */
    @ApiModelProperty ("账户名称")
    @TableField ("account_name")
    @Excel (name = "账户名称")
    private String accountName;

    /** 银行账号 */
    @ApiModelProperty ("银行账号")
    @TableField ("bank_account")
    @Excel (name = "银行账号")
    private String bankAccount;

    /** 开户行地址 */
    @ApiModelProperty ("开户行地址")
    @TableField ("opening_address")
    @Excel (name = "开户行地址")
    private String openingAddress;

    /** 联行号 */
    @ApiModelProperty ("联行号")
    @TableField ("lnterbank_number")
    @Excel (name = "联行号")
    private String lnterbankNumber;

    /** 国家id */
    @ApiModelProperty ("国家id")
    @TableField ("nation_id")
    @Excel (name = "国家id")
    private String nationId;

    /** 省份Id */
    @ApiModelProperty ("省份Id")
    @TableField ("provinces_id")
    @Excel (name = "省份Id")
    private String provincesId;

    /** 城市Id */
    @ApiModelProperty ("城市Id")
    @TableField ("city_id")
    @Excel (name = "城市Id")
    private String cityId;

    /** 区县Id */
    @ApiModelProperty ("区县Id")
    @TableField ("county_id")
    @Excel (name = "区县Id")
    private String countyId;

    /** 本位币 */
    @ApiModelProperty ("本位币")
    @TableField ("base_currency")
    @Excel (name = "本位币")
    private String baseCurrency;

    /** 汇率类型 */
    @ApiModelProperty ("汇率类型")
    @TableField ("exchange_rate_type")
    @Excel (name = "汇率类型")
    private String exchangeRateType;

    /** 汇率 */
    @ApiModelProperty ("汇率")
    @TableField ("exchange_rate")
    @Excel (name = "汇率")
    private String exchangeRate;

    /** 报销金额本位币 */
    @ApiModelProperty ("报销金额本位币")
    @TableField ("reimbursement_amount_base")
    @Excel (name = "报销金额本位币")
    private String reimbursementAmountBase;

    /** 核定付款金额本位币 */
    @ApiModelProperty ("核定付款金额本位币")
    @TableField ("approve_payment_amount_base")
    @Excel (name = "核定付款金额本位币")
    private String approvePaymentAmountBase;

    /** 创建部门 */
    @ApiModelProperty ("创建部门")
    @TableField ("create_dept")
    @Excel (name = "创建部门")
    private String createDept;

    /** 修改部门 */
    @ApiModelProperty ("修改部门")
    @TableField ("update_dept")
    @Excel (name = "修改部门")
    private String updateDept;

    /** 作废人 */
    @ApiModelProperty ("作废人")
    @TableField ("invalid_by")
    @Excel (name = "作废人")
    private String invalidBy;

    /** 作废部门 */
    @ApiModelProperty ("作废部门")
    @TableField ("invalid_dept")
    @Excel (name = "作废部门")
    private String invalidDept;

    /** 是否可用 */
    @ApiModelProperty ("是否可用")
    @TableField ("is_used")
    @Excel (name = "是否可用")
    private Integer isUsed;

    /** 流程实例ID */
    @ApiModelProperty ("流程实例ID")
    @TableField ("instance_id")
    @Excel (name = "流程实例ID")
    private String instanceId;

    /** 状态 */
    @ApiModelProperty ("状态")
    @TableField ("state")
    @Excel (name = "状态")
    private String state;

    /** 创建人 */
    @ApiModelProperty ("创建人")
    @TableField ("create_by")
    @Excel (name = "创建人")
    private String createBy;

    /** 创建时间 */
    @ApiModelProperty ("创建时间")
    @TableField ("create_time")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel (name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createTime;

    /** 修改人 */
    @ApiModelProperty ("修改人")
    @TableField ("update_by")
    @Excel (name = "修改人")
    private String updateBy;

    /** 修改时间 */
    @ApiModelProperty ("修改时间")
    @TableField ("update_time")
    @JsonFormat (pattern = "yyyy-MM-dd")
    @Excel (name = "修改时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date updateTime;



}
